package com.ourteam.system.dao;

import net.dao.IDataAccessInterface;


/**
 * Template Name : DAO接口模板
 * Template Version : 1
 * Template Last Modfiy Date : Thu Sep 21 11:14:14 CST 2017
 * Auto Generate Date : 2018-07-31 15:13:17
  * Warning ! This file will be overwrite when regenerate !
  *
 */
public interface IBaseSysResourceDAO extends IDataAccessInterface<SysResource, SysResourceDAOQueryBean> {
    /**
        *  Mapped Entity Name
        */
    static final String EntityName = "SYS_RESOURCE";

    /**
     * Mapped Field ID
    */
    static final String Id = "SYS_RESOURCE.ID";

    /**
     * Mapped Field DOMAIN_ID
    */
    static final String DomainId = "SYS_RESOURCE.DOMAIN_ID";

    /**
     * Mapped Field PARENT_RESOURCE_ID
    */
    static final String ParentResourceId = "SYS_RESOURCE.PARENT_RESOURCE_ID";

    /**
     * Mapped Field REMARKS
    */
    static final String Remarks = "SYS_RESOURCE.REMARKS";

    /**
     * Mapped Field RESOURCE_CODE
    */
    static final String ResourceCode = "SYS_RESOURCE.RESOURCE_CODE";

    /**
     * Mapped Field RESOURCE_NAME
    */
    static final String ResourceName = "SYS_RESOURCE.RESOURCE_NAME";

    /**
     * Mapped Field RESOURCE_TYPE_ID
    */
    static final String ResourceTypeId = "SYS_RESOURCE.RESOURCE_TYPE_ID";

    /**
     * Mapped Field STATUS
    */
    static final String Status = "SYS_RESOURCE.STATUS";

    /**
     * Mapped Field SORT_INDEX
    */
    static final String Sort = "SYS_RESOURCE.SORT_INDEX";

    /**
     * Mapped Field RESOURCE_TITLE_KEY
    */
    static final String ResourceTitleKey = "SYS_RESOURCE.RESOURCE_TITLE_KEY";

    /**
     * Mapped Attribute domainTitleKey
    */
    static final String DomainTitleKey = org.apache.commons.lang.StringUtils.replace(com.ourteam.system.dao.ISysDomainDAO.DomainTitelKey,
            com.ourteam.system.dao.ISysDomainDAO.EntityName + ".",
            "resourceDomain.");

    /**
     * Delete Data
     * @param final long id
     * @throws Exception
     */
    void delete(final long id) throws Exception;

    /**
         * Find Data By Primary Key
         * @param  final long id
         * @throws Exception
         */
    SysResource findById(final long id) throws Exception;

    /**
         * Query Related SysResourceProperty
         * @param aQueryBean
         * @throws Exception
         */
    com.ourteam.system.dao.SysResourceProperty[] querySysResourceProperty(
        final SysResourceDAOQueryBean queryBean) throws Exception;

    /**
         * Query Related SysResourceProperty Selective
         * @param queryBean
         * @throws Exception
         */
    java.util.Map<String, Object>[] querySysResourcePropertySelective(
        final SysResourceDAOQueryBean queryBean) throws Exception;

    /**
         * Update Related SysResourceProperty
         * @param aSysResourceProperty
         * @param queryBean
         * @throws Exception
         */
    void updateSysResourceProperty(
        final com.ourteam.system.dao.SysResourceProperty aSysResourceProperty,
        SysResourceDAOQueryBean queryBean) throws Exception;

    /**
         * Delete Related SysResourceProperty
         * @param queryBean
         * @throws Exception
         */
    void deleteSysResourceProperty(final SysResourceDAOQueryBean queryBean)
        throws Exception;

    /**
         * Query Related SysResourceType
         * @param aQueryBean
         * @throws Exception
         */
    com.ourteam.system.dao.SysResourceType[] querySysResourceType(
        final SysResourceDAOQueryBean queryBean) throws Exception;

    /**
         * Query Related SysResourceType Selective
         * @param queryBean
         * @throws Exception
         */
    java.util.Map<String, Object>[] querySysResourceTypeSelective(
        final SysResourceDAOQueryBean queryBean) throws Exception;

    /**
         * Update Related SysResourceType
         * @param aSysResourceType
         * @param queryBean
         * @throws Exception
         */
    void updateSysResourceType(
        final com.ourteam.system.dao.SysResourceType aSysResourceType,
        SysResourceDAOQueryBean queryBean) throws Exception;

    /**
         * Delete Related SysResourceType
         * @param queryBean
         * @throws Exception
         */
    void deleteSysResourceType(final SysResourceDAOQueryBean queryBean)
        throws Exception;

    static public interface DataProperty {
        /**
         * Attribute id
         */
        static final String Id = "id";

        /**
         * Attribute domainId
         */
        static final String DomainId = "domainId";

        /**
         * Attribute parentResourceId
         */
        static final String ParentResourceId = "parentResourceId";

        /**
         * Attribute remarks
         */
        static final String Remarks = "remarks";

        /**
         * Attribute resourceCode
         */
        static final String ResourceCode = "resourceCode";

        /**
         * Attribute resourceName
         */
        static final String ResourceName = "resourceName";

        /**
         * Attribute resourceTypeId
         */
        static final String ResourceTypeId = "resourceTypeId";

        /**
         * Attribute status
         */
        static final String Status = "status";

        /**
         * Attribute sort
         */
        static final String Sort = "sort";

        /**
         * Attribute resourceTitleKey
         */
        static final String ResourceTitleKey = "resourceTitleKey";

        /**
         * Attribute domainTitleKey
         */
        static final String DomainTitleKey = "domainTitleKey";
    }

    static public interface _DataObjectProperty extends DataProperty {
    }
}
